﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.Serialization;

namespace TrainingWorkshop.Models
{
    /// <summary>
    /// New Object for showing course
    /// </summary>
    [DataContract(Name = "CourseShows")]
    public class CourseShows
    {
        private int _CourseId;
        private string _CourseName;
        private Teacher _Teacher;
        private Level _Level;
        private bool _CourseStatus;

        /// <summary>
        /// Initiate the CourseShows Object
        /// </summary>
        /// <param name="level">Level Object</param>
        /// <param name="teacher">Teacher Object</param>
        public CourseShows(Level level, Teacher teacher)
        {
            this._Level = level;
            this._Teacher = teacher;
        }

        public CourseShows()
        { }

        /// <summary>
        /// Primary key of CourseShows
        /// </summary>
        [DataMember(Name = "CourseId")]
        public int CourseId
        {
            get { return _CourseId; }
            set { _CourseId = value; }
        }
        /// <summary>
        /// Name of Course
        /// </summary>
        [DataMember(Name = "CourseName")]
        public string CourseName
        {
            get { return _CourseName; }
            set { _CourseName = value; }
        }
        /// <summary>
        /// Relation between Teacher and Course 
        /// </summary>
        [DataMember(Name = "Teacher")]
        public Teacher Teacher
        {
            get { return _Teacher; }
            set { _Teacher = value; }
        }
        /// <summary>
        /// Relation between Level and Course
        /// </summary>
        [DataMember(Name = "Level")]
        public Level Level
        {
            get { return _Level; }
            set { _Level = value; }
        }
        /// <summary>
        /// Status of Course
        /// </summary>
        [DataMember(Name = "CourseStatus")]
        public bool CourseStatus
        {
            get { return _CourseStatus; }
            set { _CourseStatus = value; }
        }
    }
}
